NumPy
是 Python 中用來進行數值計算,特別是處理多維陣列和矩陣運算。廣泛用於科學計算和數據分析。以下是對 NumPy
的簡單介紹和一些常見運用。
NumPy
首先需要安裝並引入 NumPy
:
pip install numpy
import numpy as np # 一般會將 NumPy 簡寫為 np
NumPy
陣列NumPy
的核心是 ndarray
(多維陣列),它可以用來表示數組、向量、矩陣等數學結構。你可以用 array()
函數創建陣列。
import numpy as np
# 創建一個一維陣列
arr1 = np.array([1, 2, 3, 4, 5])
print(arr1)
# 創建一個二維陣列
arr2 = np.array([[1, 2, 3], [4, 5, 6]])
print(arr2)
輸出:
[1 2 3 4 5]
[[1 2 3]
[4 5 6]]
NumPy
提供多種生成數值陣列的方法,方便快速生成資料。
np.zeros()
:生成全是 0 的陣列。arr = np.zeros((3, 3)) # 創建一個 3x3 的全 0 矩陣
print(arr)
輸出:
[[0. 0. 0.]
[0. 0. 0.]
[0. 0. 0.]]
np.ones()
:生成全是 1 的陣列。arr = np.ones((2, 4)) # 創建一個 2x4 的全 1 矩陣
print(arr)
輸出:
[[1. 1. 1. 1.]
[1. 1. 1. 1.]]
np.arange()
:生成一個範圍內的數字序列。arr = np.arange(1, 10, 2) # 生成 1 到 9 的奇數陣列
print(arr)
輸出:
[1 3 5 7 9]
np.linspace()
:生成均勻分佈的數字。arr = np.linspace(0, 1, 5) # 生成從 0 到 1 的 5 個均勻數
print(arr)
輸出:
[0. 0.25 0.5 0.75 1. ]
NumPy
內置了隨機數生成器,可以生成隨機的陣列數據。
random_arr = np.random.rand(3, 3) # 生成一個 3x3 的隨機矩陣
print(random_arr)
輸出:
[[0.123 0.456 0.789]
[0.321 0.654 0.987]
[0.147 0.258 0.369]]
NumPy
支援改變陣列的形狀,這在處理矩陣時特別有用。
arr = np.array([[1, 2, 3], [4, 5, 6]])
# 查看陣列形狀
print(arr.shape)
輸出:
(2, 3)
改變陣列形狀:
arr_reshaped = arr.reshape((3, 2))
print(arr_reshaped)
輸出:
[[1 2]
[3 4]
[5 6]]